Lập trình siêu di truyền Lập trình di truyền

Lập trình siêu di truyền (Meta-genetic programing, Meta-GP) là kỹ thuật siêu học được đề xuất để phát triển một hệ thống lập trình di truyền bằng cách sử dụng chính lập trình di truyền. Nó đề xuất rằng nhiễm sắc thể, quá trình trao đổi chéo và đột biến đều là kết quả của sự tiến hóa, do đó, chúng nên được phép tự thay đổi như những phiên bản ngoài đời thực thay vì được xác định bởi một lập trình viên. Meta-GP được Jürgen Schmidhuber chính thức đề xuất vào năm 1987.[43] Kĩ thuật này có thể tương đồng với công trình Eurisko trước đó của Doug Lenat. Nó là một thuật toán đệ quy tự dừng, cho phép tránh rơi vào đệ quy vô hạn. Trong phương pháp tiếp cận "tiến hóa tự xây dựng" đối với lập trình siêu di truyền, các phương pháp sinh sản và biến dị con cái được mã hóa trong chính các chương trình đang tiến hóa, và các chương trình được thực hiện để tạo ra các chương trình mới được thêm vào quần thể.[34][44]

Những người chỉ trích ý tưởng này thường nói rằng cách tiếp cận này có phạm vi quá rộng. Tuy nhiên, có thể giới hạn tiêu chí thích nghi thành một tiêu chí chung để thu được một GP tốt hơn để tiến hóa cho các lớp con. Chẳng hạn như meta-GP tiến hóa để tạo ra các thuật toán đi bộ của con người, sau đó được sử dụng để tiến hóa hoạt động chạy, nhảy của con người, v.v. Tiêu chí thích nghi áp dụng cho meta GP này sẽ chỉ đơn giản là một giá trị hiệu suất.

Tài liệu tham khảo

WikiPedia: Lập trình di truyền http://www.cs.mun.ca/~banzhaf/papers/eurogp08_clgp... http://www.idsia.ch/~juergen/diploma.html http://www.geneticprogramming.com http://www.modulusfe.com/products/trading-system-d... //citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1... //citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1... http://ugp3.sourceforge.net/ http://www.sover.net/~nichael/nlc-publications/icg... //doi.org/10.1007%2Fbfb0055930 //doi.org/10.1007%2Fs10710-010-9112-3